home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Mac Power 1997 December
/
MACPOWER-1997-12.ISO.7z
/
MACPOWER-1997-12.ISO
/
AMUG
/
PROGRAMMING
/
Raven 1.2 Examples.sit
/
Raven 1.2 Examples
/
Quill
/
Source
/
Document.h
< prev
next >
Wrap
Text File
|
1997-05-11
|
2KB
|
103 lines
/*
* File: Document.h
* Summary: Quill's document class.
* Written by: Jesse Jones
*
* Copyright ゥ 1996-1997 Jesse Jones.
* For conditions of distribution and use, see copyright notice in ZTypes.h
*
* Change History (most recent first):
*
* <3> 5/11/97 JDJ Keeps the resource fork open.
* <2> 5/04/97 JDJ Added mPensMap.
* <1> 8/09/96 JDJ Created
*/
#pragma once
#include <ZAutoPtr.h>
#include <ZDocument.h>
#include <ZListener.h>
#include "CustomClasses.h"
#include "ResourceMap.h"
// ===================================================================================
// class CDocument
// ===================================================================================
class CDocument : public TDocument, public MListener<SResourceMapMessage> {
typedef TDocument Inherited;
//-----------------------------------
// Initialization/Destruction
//
public:
virtual ~CDocument();
CDocument(MCommander* super);
//-----------------------------------
// New API
//
public:
CResourceMap* GetWindowMap() {return mWindowMap.Get();}
CResourceMap* GetViewMap() {return mViewMap.Get();}
CResourceMap* GetTraitsMap() {return mTraitsMap.Get();}
CResourceMap* GetPensMap() {return mPensMap.Get();}
CCustomClasses* GetCustomPanes() {return mCustomPanes.Get();}
ResID GetUniqueID(ResType type) const;
// Returns a unique id that won't conflict with other documents.
protected:
virtual void OnBroadcast(const SResourceMapMessage& mesg);
//-----------------------------------
// TDocument API
//
public:
virtual void HandleOpen(const TFileSpec& spec);
virtual bool HandleSave();
virtual bool HandleSaveAs();
protected:
virtual void Invariant() const;
virtual void OnSetDirty(bool dirty);
virtual void OnSaveRsrcFork(const TFileSpec& spec);
virtual void OnOpenResources();
virtual void OnSaveResources();
//-----------------------------------
// MCommander API
//
protected:
virtual bool OnMenuCommand(const MenuCommand& command);
virtual bool OnCommandStatus(const MenuCommand& command, SCommandStatus& status);
//-----------------------------------
// Member data
//
protected:
TAutoPtr<CResourceMap> mWindowMap;
TAutoPtr<CResourceMap> mViewMap;
TAutoPtr<CResourceMap> mTraitsMap;
TAutoPtr<CResourceMap> mPensMap;
TAutoPtr<CCustomClasses> mCustomPanes;
short mRsrcRefNum;
};